home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 April: Mac OS SDK / Dev.CD Apr 96 SDK / Dev.CD Apr 96 SDK1.toast / Development Kits (Disc 1) / OpenDoc / Sample Code / Sample Editors⁄Viewers / Text Editor / Source / TextEditorSemIntf.xih < prev    next >
Encoding:
Text File  |  1995-12-13  |  10.5 KB  |  370 lines  |  [TEXT/MPS ]

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: Delta Quadrant:Source:OD:SampleCode:SOMTextEditor:Source:TextEditorSemIntf.xih.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.18
  7.  *     SOM Emitter emitxih.dll: 2.33
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *  Classes defined in this interface
  13.  * 
  14.  */
  15.  
  16.  
  17. #ifndef SOM_TextEditorSemIntf_xih
  18. #define SOM_TextEditorSemIntf_xih
  19.  
  20. #include <somcls.xh>
  21. #include <somcm.xh>
  22.  
  23. /*
  24.  * Passthru lines: File: "C.xih", "before"
  25.  */
  26.  
  27. class CTSMTextension;
  28.  
  29.  
  30. #ifndef SOM_TextEditorSemIntf_xh
  31. #include <TextEditorSemIntf.xh>
  32. #endif
  33.  
  34. /*
  35.  * Set the scope of methods functions
  36.  */
  37. #ifndef SOM_Scope
  38. #define SOM_Scope extern "C"
  39. #endif
  40.  
  41. #define TextEditorSemIntf_MaxNoMethods 1
  42.  
  43. /*
  44.  * -- Instance Data
  45.  */
  46.  
  47. /*
  48.  * -- Use best possible alignment for instance data slice.
  49.  */
  50. #if powerc
  51. #  pragma options align=power
  52. #endif
  53. typedef struct {
  54.     CTSMTextension* fTextension;
  55. } TextEditorSemIntfData;
  56. #if powerc
  57. #  pragma options align=reset
  58. #endif
  59.  
  60. /*
  61.  * -- Getdata Macro
  62.  */
  63.  
  64. /*
  65.  * -- This emitter treats Data Tokens as Thunks by default.
  66.  * -- Use the sc modifier "nothunks" to override this default.
  67.  */
  68. SOMEXTERN typedef TextEditorSemIntfData* (* SOMLINK somTD_TextEditorSemIntf_DataThunk)(void*);
  69. #define TextEditorSemIntfGetData(somSelf) \
  70.    (((somTD_TextEditorSemIntf_DataThunk)(TextEditorSemIntfClassData.instanceDataToken))(somSelf))
  71.  
  72. /*
  73.  * -- Instance Data Access Macros for use in Method Procedures
  74.  */
  75. #ifdef VARIABLE_MACROS
  76.   #define _fTextension (somThis->fTextension)
  77. #endif
  78.  
  79.  
  80. /*
  81.  * Trace/Debug macro
  82.  */
  83. #ifndef TextEditorSemIntfMethodDebug
  84. #define TextEditorSemIntfMethodDebug(c,m) SOMMethodDebug(c,m)
  85. #endif
  86.  
  87. /*
  88.  * -- Method Macros for use in Method Procedures
  89.  */
  90. #ifdef METHOD_MACROS
  91.   #define _InitSemanticInterface somSelf->InitSemanticInterface
  92.   #define _CallEventHandler somSelf->CallEventHandler
  93.   #define _CallCoercionHandler somSelf->CallCoercionHandler
  94.   #define _CallPredispatchProc somSelf->CallPredispatchProc
  95.   #define _CallObjectAccessor somSelf->CallObjectAccessor
  96.   #define _CallCompareProc somSelf->CallCompareProc
  97.   #define _CallCountProc somSelf->CallCountProc
  98.   #define _CallDisposeTokenProc somSelf->CallDisposeTokenProc
  99.   #define _CallGetErrDescProc somSelf->CallGetErrDescProc
  100.   #define _CallGetMarkTokenProc somSelf->CallGetMarkTokenProc
  101.   #define _CallMarkProc somSelf->CallMarkProc
  102.   #define _CallAdjustMarksProc somSelf->CallAdjustMarksProc
  103.   #define _GetOSLSupportFlags somSelf->GetOSLSupportFlags
  104.   #define _SetOSLSupportFlags somSelf->SetOSLSupportFlags
  105.   #define _UsingPredispatchProc somSelf->UsingPredispatchProc
  106.   #define _BaseRemoved somSelf->BaseRemoved
  107.   #define _IsValid somSelf->IsValid
  108.   #define _CheckValid somSelf->CheckValid
  109.   #define _Release somSelf->Release
  110.   #define _InitExtension somSelf->InitExtension
  111.   #define _GetBase somSelf->GetBase
  112.   #define _BaseRemoved somSelf->BaseRemoved
  113.   #define _IsValid somSelf->IsValid
  114.   #define _CheckValid somSelf->CheckValid
  115.   #define _Release somSelf->Release
  116.   #define _InitRefCntObject somSelf->InitRefCntObject
  117.   #define _Acquire somSelf->Acquire
  118.   #define _Release somSelf->Release
  119.   #define _GetRefCount somSelf->GetRefCount
  120.   #define _somUninit somSelf->somUninit
  121.   #define _InitObject somSelf->InitObject
  122.   #define _HasExtension somSelf->HasExtension
  123.   #define _AcquireExtension somSelf->AcquireExtension
  124.   #define _ReleaseExtension somSelf->ReleaseExtension
  125.   #define _Purge somSelf->Purge
  126.   #define _IsEqualTo somSelf->IsEqualTo
  127.   #define _SubClassResponsibility somSelf->SubClassResponsibility
  128.   #define _somInit somSelf->somInit
  129.   #define _somUninit somSelf->somUninit
  130.   #define _somInit somSelf->somInit
  131.   #define _somUninit somSelf->somUninit
  132.   #define _somDuplicateReference somSelf->somDuplicateReference
  133.   #define _somCompareReference somSelf->somCompareReference
  134.   #define _somRelease somSelf->somRelease
  135.   #define _somFree somSelf->somFree
  136.   #define _somCanDelete somSelf->somCanDelete
  137.   #define _somGetClass somSelf->somGetClass
  138.   #define _somGetClassName somSelf->somGetClassName
  139.   #define _somGetSize somSelf->somGetSize
  140.   #define _somIsA somSelf->somIsA
  141.   #define _somRespondsTo somSelf->somRespondsTo
  142.   #define _somIsInstanceOf somSelf->somIsInstanceOf
  143.   #define _somDispatch somSelf->somDispatch
  144.   #define _somClassDispatch somSelf->somClassDispatch
  145.   #define _somCastObj somSelf->somCastObj
  146.   #define _somResetObj somSelf->somResetObj
  147.   #define _somPrintSelf somSelf->somPrintSelf
  148.   #define _somDumpSelf somSelf->somDumpSelf
  149.   #define _somDumpSelfInt somSelf->somDumpSelfInt
  150.   #define _RegisterTextension somSelf->RegisterTextension
  151.   #define _somInit somSelf->somInit
  152.   #define _somUninit somSelf->somUninit
  153.   #define _CallEventHandler somSelf->CallEventHandler
  154. #endif
  155.  
  156.  
  157. /*
  158.  * Introduced methods
  159.  */
  160.  
  161. /* New Method: RegisterTextension */
  162. SOM_Scope void  SOMLINK TextEditorSemIntf__RegisterTextension(TextEditorSemIntf *somSelf, Environment *ev,
  163.         ODPtr textension);
  164.  
  165. /*
  166.  * Overridden methods
  167.  */
  168.  
  169. /* Overridden method: somInit */
  170. SOM_Scope void  SOMLINK TextEditorSemIntf__somInit(TextEditorSemIntf *somSelf);
  171. SOMEXTERN typedef void   (* SOMLINK somTD_xih_TextEditorSemIntf_somInit)(TextEditorSemIntf *somSelf);
  172. inline void  SOMLINK TextEditorSemIntf_parent_ODSemanticInterface_somInit(TextEditorSemIntf *somSelf)
  173. {
  174.   (void)         (somSelf);
  175. }
  176. #define TextEditorSemIntf_parents_somInit(arg0) \
  177.   (void) TextEditorSemIntf_parent_ODSemanticInterface_somInit(arg0)
  178.  
  179. /* Overridden method: somUninit */
  180. SOM_Scope void  SOMLINK TextEditorSemIntf__somUninit(TextEditorSemIntf *somSelf);
  181. SOMEXTERN typedef void   (* SOMLINK somTD_xih_TextEditorSemIntf_somUninit)(TextEditorSemIntf *somSelf);
  182. inline void  SOMLINK TextEditorSemIntf_parent_ODSemanticInterface_somUninit(TextEditorSemIntf *somSelf)
  183. {
  184.   (void)         (somSelf);
  185. }
  186. #define TextEditorSemIntf_parents_somUninit(arg0) \
  187.   (void) TextEditorSemIntf_parent_ODSemanticInterface_somUninit(arg0)
  188.  
  189. /* Overridden method: CallEventHandler */
  190. SOM_Scope void  SOMLINK TextEditorSemIntf__CallEventHandler(TextEditorSemIntf *somSelf, Environment *ev,
  191.         ODPart* thePart,
  192.         ODAppleEvent* theODAppleEvent,
  193.         ODAppleEvent* reply);
  194. SOMEXTERN typedef void   (* SOMLINK somTD_xih_TextEditorSemIntf_CallEventHandler)(TextEditorSemIntf *somSelf, Environment *ev,
  195.         ODPart* thePart,
  196.         ODAppleEvent* theODAppleEvent,
  197.         ODAppleEvent* reply);
  198. inline void  SOMLINK TextEditorSemIntf_parent_ODSemanticInterface_CallEventHandler(TextEditorSemIntf *somSelf, Environment *ev,
  199.     ODPart* thePart,
  200.     ODAppleEvent* theODAppleEvent,
  201.     ODAppleEvent* reply)
  202. {
  203.   ((somTD_xih_TextEditorSemIntf_CallEventHandler)
  204.     somParentNumResolve((somClassDataStructure*)&TextEditorSemIntfClassData, 1, ODSemanticInterfaceClassData.CallEventHandler))
  205.         (somSelf,ev,thePart,theODAppleEvent,reply);
  206. #ifdef SOMCHKEXCEPT
  207.   SOMCHKEXCEPT;
  208. #endif
  209. }
  210. #define TextEditorSemIntf_parents_CallEventHandler(arg0,arg1,arg2,arg3,arg4) \
  211.   (void) TextEditorSemIntf_parent_ODSemanticInterface_CallEventHandler(arg0,arg1,arg2,arg3,arg4)
  212.  
  213. /*
  214.  * -- Primary Implementation File Support
  215.  */
  216. #if (defined(TextEditorSemIntf_Class_Source) || defined(SOM_Module_texteditorsemintf_Source))
  217.  
  218. /*
  219.  * -- The TextEditorSemIntf ClassData Structure
  220.  */
  221.  
  222. #if PRAGMA_IMPORT_SUPPORTED
  223. #pragma export list TextEditorSemIntfClassData
  224. #endif
  225.  
  226.  
  227. /*
  228.  * -- The TextEditorSemIntf Class Ancestor Table
  229.  */
  230. static somClassDataStructure * SOMDLINK TextEditorSemIntfClassAncestors [] = {
  231.     (somClassDataStructure*) & ODSemanticInterfaceClassData,    /* parent */
  232.     (somClassDataStructure*) & SOMObjectClassData,    /* ancestor */
  233. };
  234.  
  235.  
  236. /*
  237.  * -- The TextEditorSemIntf Override ProcPtr Implementations Table
  238.  */
  239. static somMethodPtr TextEditorSemIntfOverrideProcs [] = {
  240.     (somMethodPtr) TextEditorSemIntf__CallEventHandler,    /* override class ODSemanticInterface */
  241.     (somMethodPtr) TextEditorSemIntf__somInit,    /* override class SOMObject */
  242.     (somMethodPtr) TextEditorSemIntf__somUninit,    /* override class SOMObject */
  243. };
  244.  
  245.  
  246. static void TextEditorSemIntfDLLD ( void ) { }
  247.  
  248.  
  249. /*
  250.  * -- The TextEditorSemIntf Static Class Info Master Table
  251.  */
  252. static somStaticClassInfo TextEditorSemIntfSCI = {
  253.       70,    /* layout version */
  254.     (somClassDataStructure*)  & TextEditorSemIntfClassData,    /* main token table */
  255.       TextEditorSemIntfOverrideProcs,    /* override proc implemenations table */
  256.       TextEditorSemIntfClassAncestors,    /* ancestor table */
  257.       TextEditorSemIntfDLLD,    /* DLLdesignator */
  258.       0,    /* no special procs */
  259.       0,    /* rtci slot */
  260.       0,    /* count slot */
  261.       0,    /* dynamic ancestry */
  262.       0,    /* free */
  263.       0,    /* free */
  264.       0,    /* free */
  265.       0,    /* free */
  266.  
  267. /*
  268.  * -- The TextEditorSemIntf Counts Table
  269.  */
  270.     (somStaticClassCounts *)
  271.         "\x00\x00\x00\x00"    /* majorversion */
  272.         "\x00\x00\x00\x00"    /* minorversion */
  273.         "\x00\x00\x00\x01"    /* flags */
  274.             "\x00\x02"    /* type code alignment */
  275.             "\x00\x01"    /* classTokenCount */
  276.             "\x00\x01"    /* numDirectParents */
  277.             "\x00\x00"    /* numMetaClasses */
  278.             "\x00\x02"    /* numOverriddenAncestors */
  279.             "\x00\x00"    /* numMigratedMethods */
  280.             "\x00\x00"    /* numSelectedInherited */
  281.             "\x00\x00"    /* numUnused */
  282.             "\x00\x00"    /* free */
  283.             "\x00\x00"    /* free */
  284.             "\x00\x00"    /* free */
  285.             "\x00"    /* free */
  286.                 ,
  287.  
  288.     {
  289.       "TextEditorSemIntf",    /* the class name */
  290.       sizeof (TextEditorSemIntfData), /* class instance data size */
  291.  
  292. /*
  293.  * -- The TextEditorSemIntf Parent Versions Table
  294.  */
  295.     (somParentVersions *)
  296.         "\x00\x00\x00\x01"    /* majorversion */
  297.         "\x00\x00\x00\x00"    /* minorversion */
  298.                 ,
  299.  
  300.  
  301. /*
  302.  * -- The TextEditorSemIntf Token Slot Usage Table
  303.  */
  304.     (somSlotUsage *)
  305.         "",
  306.  
  307.  
  308. /*
  309.  * -- The TextEditorSemIntf Method Signature Info
  310.  */
  311.     (somSignatureInfo *)
  312.         "\x03\x07"    /* RegisterTextension */
  313.              ,
  314.  
  315.  
  316. /*
  317.  * -- The TextEditorSemIntf Class Method Names
  318.  */
  319.         "RegisterTextension\0"
  320.             ,
  321.  
  322.  
  323. /*
  324.  * -- The TextEditorSemIntf Override Slots Table
  325.  */
  326.     (somOverrideData *)
  327.         "\x00\x00\x00\x01"    /* parent ODSemanticInterface has 1 overrides */
  328.             "\x00\x01"    /* CallEventHandler */
  329.         "\x00\x01\x00\x02"    /* parent SOMObject has 2 overrides */
  330.             "\x00\x00"    /* somInit */
  331.             "\x00\x01"    /* somUninit */
  332.                 ,
  333.  
  334.       0,    /* no migrated methods table */
  335.       0,    /* no selected inherited */
  336.       0,    /* unused */
  337.  
  338.       0,    /* free */
  339.       0,    /* free */
  340.       0,    /* free */
  341.       0,    /* free */
  342.     },
  343. };
  344.  
  345. /*
  346.  * -- The TextEditorSemIntf ClassData Structure
  347.  */
  348. struct TextEditorSemIntfClassDataStructure SOMDLINK TextEditorSemIntfClassData = {
  349.       0,            /* zero */
  350.     & TextEditorSemIntfSCI,        /* SCI link */
  351.       0,            /* instanceDataToken */
  352.       0,            /* reserved */
  353.       0,            /* reserved */
  354.       0,            /* reserved */
  355.     (somMToken) TextEditorSemIntf__RegisterTextension,    /* RegisterTextension:method */
  356. };
  357.  
  358.  
  359. /*
  360.  * Functions for attributes.
  361.  */
  362.  
  363. /*
  364.  * Macros for initializers/destructors
  365.  */
  366.  
  367. #endif /* Primary Implementation Support */
  368.  
  369. #endif       /* SOM_TextEditorSemIntf_xih */
  370.